$NG.AllReady(function (
    editPage,
    { useAction, useValuesChange, useUpdateRows, useUpdateRow, useDataIndexChange, useClick }
) {
    const mstform = $NG.getCmpApi("p_form_employ_salary")
	const dgrid1 = $NG.getCmpApi("p_form_employ_salary_d")
    // 项目监听
    useValuesChange(({args})=>{
        getProjectInfo()
    },"p_form_employ_salary.phid_pc")

    // 表格编辑监听
    useUpdateRow(({args})=>{
        autoInNameToPhid(args[0])
    }, "p_form_employ_salary_d")

    // 表格行为监听
    useUpdateRows(({args})=>{
        sum()
    }, "p_form_employ_salary_d")

    // 根据项目带编码：表格
    function autoInNameToPhid(item){
        console.log(`表格编辑监听`, item);
        // 查询相应项目的信息
        getProjectInfo(true, item.u_pc_name,(_data)=>{
            if(_data){
                item.u_pc_no = _data.phid_pc
                item.u_pc_no_EXName = _data.pc_no
            }
            dgrid1.refreshView()
        })
    }

    // 汇总含税金额
    function sum (){
        const _row = dgrid1.getRows()
        let _count = 0;
        _row.forEach(element => {
            _count += (Number(element.u_total) || 0) * 1.0672
        });
        $NG.updateState((updater)=>{
            updater.data.p_form_employ_salary.setProps({
                u_total:_count
            })
        })
    }

    // 获取项目
    function getProjectInfo(isReturn = false, phid = mstform.getItem("phid_pc").getValue(), fun){
        if(!phid) return
        $NG.execServer("getPtInfoByPhid",{phid: phid}, (res)=>{
            const _data = JSON.parse(res.data)[0].extendObjects
            console.log(`获取项目信息`, _data);
            if(isReturn){
                fun(_data)
            } else {
                $NG.updateState((updater)=>{
                    updater.data.p_form_employ_salary.setProps({
                        u_pc_no: {
                            label:_data.pc_no,
                            value:_data.pc_no
                        }, //项目编码
                        phid_dept: {
                            //事业部or组织
                            value: _data.org_phid,
                            label: _data.org_name,
                        },
                        phid_emp:{
                            label:_data.project_manager_name,
                            value:_data.project_manager_phid
                        }
                    })
                })
            }
        })
    }
});